package com.dongjiantong.farmrecords.service;

import com.dongjiantong.farmrecords.model.FarmRecordsFile;
import com.dongjiantong.mybatis.BaseService;

import java.util.List;
import java.util.Map;

public interface FarmRecordsFileService extends BaseService<FarmRecordsFile> {
    /**
     * 根据文件关联表id,一级类型和二级类型查询文件列表
     * @param relevanceId 文件关联表id
     * @param type1 一级类型
     * @param type2 二级类型
     */
    List<FarmRecordsFile> selectPicOrVideoListByExample(Long relevanceId,Integer type1,Integer type2);

    /**
     * 根据文件关联表id List,一级类型和二级类型查询文件列表
     * @param relevanceIds 文件关联表id
     * @param type1 一级类型
     * @param listType2 二级类型
     */
    List<FarmRecordsFile> selectPicOrVideoListByRelevanceIds(List<Long> relevanceIds, Integer type1, List<Integer> listType2);

    /**
     * 新增单据关联的图片或者视频
     * @param type1 关联单据类型
     * @param picList 图片list
     * @param videoList 视频list
     * @param relevanceId 关联单据id
     * @return Map<String,Object> (<picResult/图片新增结果><videoResult/视屏新增结果>)
     */
    Map<String,Object> insertPicOrVideoByRelevanceId(Integer type1,List<String> picList, List<String> videoList, Long relevanceId);

    /**
     * 更新单据关联的图片或者视频
     * @param type1 关联单据类型
     * @param picList 图片list
     * @param videoList 视频list
     * @param relevanceId 关联单据id
     * @return Map<String,Object> (<picResult/图片新增结果><videoResult/视屏新增结果>)
     */
    Map<String,Object> updatePicOrVideoByRelevanceId(Integer type1, List picList, List videoList, Long relevanceId);
}
